package com.yonyou.sto.modules.ims.model;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 *
 * </p>
 *
 * @author aegon
 * @since 2020-10-20
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("ims_manual_invoice")
@ApiModel(value="ImsManualInvoice对象", description="")
public class ImsManualInvoice implements Serializable {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    @ApiModelProperty(value = "收款单编号")
    private String billSn;

    @ApiModelProperty(value = "发票内容")
    private String billContent;

    @ApiModelProperty(value = "收款单位编号")
    private String sellerSn;

    @ApiModelProperty(value = "收款单位名称")
    private String sellerName;

    @ApiModelProperty(value = "收款组织名称")
    private String partyName;

    @ApiModelProperty(value = "购买方名称")
    private String buyerName;

    @ApiModelProperty(value = "购买方纳税人识别号")
    private String buyerTaxSn;

    @ApiModelProperty(value = "收款内容和备注")
    private String note;

    @ApiModelProperty(value = "本次收款金额")
    private BigDecimal payAmount;

    @ApiModelProperty(value = "价税合计")
    private BigDecimal taxAmount;

    @ApiModelProperty(value = "发票流水号")
    private String billSerial;

    @ApiModelProperty(value = "发票类型：3->增值税普通发票；4->增值税专用发票")
    private Integer billType;

    @ApiModelProperty(value = "创建人编码")
    private String createUsername;

    @ApiModelProperty(value = "创建人名称")
    private String createNickname;

    @ApiModelProperty(value = "提交时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="Asia/Shanghai")
    private Date createTime;

    @ApiModelProperty(value = "驳回原因")
    private String rejectReason;

    @ApiModelProperty(value = "驳回时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="Asia/Shanghai")
    private Date rejectTime;

    @ApiModelProperty(value = "单据状态")
    private Integer status;


}
